package cn.sc.summer.redis.po;

import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Map;

/**
 * 类名：nacos服务实例信息映射实体类
 *
 * @author a-xin
 * @date 2023/12/14 15:17
 */
@Data
@Accessors(chain = true)
public class ServiceInstance implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * token
     */
    private String instanceId;

    /**
     * 服务实例IP
     */
    private String ip;

    /**
     * 服务实例端口
     */
    private Integer port;

    /**
     * 服务权重
     */
    private Double weight;

    /**
     * 服务是否健康
     */
    private Boolean healthy;

    /**
     * 是否开启服务
     */
    private Boolean enabled;

    /**
     * 是否暂时的
     */
    private Boolean ephemeral;

    /**
     * 集群名称
     */
    private String clusterName;

    /**
     * 服务实例名称
     */
    private String serviceName;

    /**
     * 服务元数据
     */
    private Map<String, String> metadata;

    /**
     * ip 删除超时 ms
     */
    private Integer ipDeleteTimeOut;

    /**
     * 实例心跳间隔 ms
     */
    private Integer instanceHeartBeatInterval;

    /**
     * 实例心跳超时 ms
     */
    private Integer instanceHeartBeatTimeOut;

}
